/**
 * 将nums中所有0移动到数组末尾并保持非零元素相对顺序
 * 必须在原数组上操作
 * @param {number[]} nums 
 * 双指针
 */
var moveZeros = function (nums) {
    let j = 0

    // 对于nums中非零元素逐个挪到数组开头
    for (let i = 0; i < nums.length; i++) {
        if (nums[i] !== 0) {
            nums[j++] = nums[i]
        }
    }

    // 剩下的位置全部置为0
    for (let i = j; i < nums.length; i++) {
        nums[i] = 0
    }

    return nums
}